serialization explained